Oblivious algebraic data types
نویسندگان
چکیده
Secure computation allows multiple parties to compute joint functions over private data without leaking any sensitive data, typically using powerful cryptographic techniques. Writing secure applications these techniques directly can be challenging, resulting in the development of several programming languages and compilers that aim make accessible. Unfortunately, many either lack or have limited support for rich recursive structures, like trees. In this paper, we propose a novel representation structured types, which call oblivious algebraic language writing computations them. This combines dependent types with constructs computation, provides security-type system ensures adversaries learn nothing more than result computation. Using language, authors write single function then easily build an equivalent according desired public view their data.
منابع مشابه
Refining algebraic data types
Our purpose is to formalize two potential refinements of single-sorted algebraic data types – subalgebras and algebras which satisfy equivalence relations – by considering their categorical interpretation. We review the usual categorical formalization of singleand multi-sorted algebraic data types as initial algebras, and the correspondence between algebraic data types and endofunctors. We intr...
متن کاملAbstractions in Decision Procedures for Algebraic Data Types Abstractions in Decision Procedures for Algebraic Data Types Abstractions in Decision Procedures for Algebraic Data Types
ions in Decision Procedures for Algebraic Data Types
متن کاملWobbly types: type inference for generalised algebraic data types
Generalised algebraic data types (GADTs), sometimes known as “guarded recursive data types” or “first-class phantom types”, are a simple but powerful generalisation of the data types of Haskell and ML. Recent works have given compelling examples of the utility of GADTs, although type inference is known to be difficult. It is time to pluck the fruit. Can GADTs be added to Haskell, without losing...
متن کاملSimple algebraic data types for C
ADT is a simple tool in the spirit of Lex and Yacc that makes algebraic data types and a restricted form of pattern matching on those data types as found in SML available in C programs. ADT adds runtime checks, which make C programs written with the aid of ADT less likely to dereference a NULL pointer. The runtime tests may consume a significant amount of CPU time; hence they can be switched of...
متن کاملSize Analysis of Algebraic Data Types
We present a size-aware type system for a first-order functional language with algebraic data types, where types are annotated with polynomials over size variables. We define how to generate typing rules for each data type, provided its user defined size function meets certain requirements. As an example, a program for balancing binary trees is type checked. The type system is shown to be sound...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Proceedings of the ACM on programming languages
سال: 2022
ISSN: ['2475-1421']
DOI: https://doi.org/10.1145/3498713